#include <iostream>
#include <vector>
using namespace std;

int main() {
    string str;
    cin>>str;
    int n=str.size();
    int ret=0;
    vector<vector<int>> dp(n+1,vector<int>(n+1));
    for(int i=n-1;i>=0;i--)
    {
        dp[i][i]=1;
        for(int j=i+1;j<n;j++)
        {
            if(str[i]==str[j])
            {
                if(i+j-1==2)
                    dp[i][j]=2;
                else{
                    dp[i][j]=dp[i+1][j-1]+2;
                }
            }
            else{
                dp[i][j]=max(dp[i+1][j],dp[i][j-1]);
            }
        }
    }
    cout<<dp[0][n-1];
    return 0;
}
